<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8" />
		<title>2.姓名案例_methods实现</title>
		<!-- 引入Vue -->
		<script type="text/javascript" src="../js/vue.js"></script>
	</head>
	<body>
		<!-- 
				使用methods去实现姓名案例，比直接使用插值，好了一些，但是也有问题：
					1.多次使用同样的值，会多次计算，没有缓存，有一定的效率上的问题。
					2.无关数据若发生变化，也会导致方法重新执行。
		-->
		<!-- 准备好一个容器-->
		<div id="demo">
			<h2 @click="changeEnglish">{{msg}}</h2>
			姓：<input type="text" v-model="firstName"> <br>
			名：<input type="text" v-model="lastName"> <br>
			全名：<span>{{getFullName()}}</span><br>
			全名：<span>{{getFullName()}}</span><br>
			全名：<span>{{getFullName()}}</span><br>
			全名：<span>{{getFullName()}}</span><br>
			全名：<span>{{getFullName()}}</span><br>
			全名：<span>{{getFullName()}}</span><br>
			全名：<span>{{getFullName()}}</span><br>
			全名：<span>{{getFullName()}}</span><br>
			全名：<span>{{getFullName()}}</span><br>
			全名：<span>{{getFullName()}}</span><br>
		</div>

		<script type="text/javascript">
			//阻止 vue 在启动时生成生产提示。
			Vue.config.productionTip = false
			
			new Vue({
				el:'#demo',
				data:{
					msg:'欢迎来到尚硅谷',
					firstName:'zhang',
					lastName:'san'
				},
				methods:{
					getFullName(){
						console.log('@')
						return this.firstName.slice(0,1).toUpperCase() + this.firstName.slice(1) + this.lastName
					},
					changeEnglish(){
						this.msg = 'Welcome to atguigu!'
					}
				}
			})
		</script>
	</body>
</html>